import axios from '../../axios/index'

export interface accountInterface {
    companyId: string //企业Id
    userName: string //用户名称
    userPassword: string | null //用户密码
    userPhone: string //用户手机号
}
/**
 * 添加子账号
 * @param data ==
 * @param companyId: string //企业Id
 * @param userName: string //用户名称
 * @param userPassword: string //用户密码
 * @param userPhone: string //用户手机号
 * @returns
 */
export const h5AccountAdd = (data: accountInterface) => {
    return axios({
        method: 'post',
        url: '/api/system/portal/user/child/add',
        data
    })
}

/**
 * 根据userId 删除子账号
 * @param userId
 * @returns
 */
export const h5AccountDelete = (userId: string) => {
    return axios({
        method: 'delete',
        url: '/api/system/portal/user/child/delete',
        params: { userId }
    })
}

/**
 * 子账号的启用/禁用
 * @param userId
 * @param isEnabled
 * @returns
 */
export const h5AccountEnabled = (userId: string, isEnabled: boolean) => {
    return axios({
        method: 'put',
        url: '/api/system/portal/user/child/enabled',
        params: {
            userId,
            isEnabled
        }
    })
}

export interface h5AccountParams {
    current: number //当前页
    size: number //每页数量
    companyName?: string //企业名称
    userEnabledStatus?: string //启用状态 1是启用的 0是未启用的 不传是查全部
    userName?: string //用户名称
    userPhone?: string //用户手机号
    companyId?: string
}

/**
 * 查询子账号列表
 * @param params
 * @param current: number //当前页
 * @param size: number //每页数量
 * @param companyName?: string //企业名称
 * @param userEnabledStatus?: string //启用状态 1是启用的 0是未启用的 不传是查全部
 * @param userName?: string //用户名称
 * @param userPhone?: string //用户手机号
 * @returns
 */
export const h5AccountList = (params: h5AccountParams) => {
    return axios({
        method: 'get',
        url: '/api/system/portal/user/child/list',
        params
    })
}

/**
 * 修改子账号
 * @param userId :string // 用户id
 * @param companyId: string //企业Id
 * @param userName: string //用户名称
 * @param userPassword: string //用户密码
 * @param userPhone: string //用户手机号
 * @returns
 */
export const h5AccountUpdate = (userId: string, params: accountInterface) => {
    return axios({
        method: 'put',
        url: `/api/system/portal/user/child/update/${userId}`,
        data: params
    })
}
